home *** CD-ROM | disk | FTP | other *** search
/ The Utilities Experience / The Utilities Experience - Volume 1.iso / software / demos / r-z / stormc-demo / include / clib / intuition_protos.h < prev    next >
C/C++ Source or Header  |  1996-01-02  |  12KB  |  265 lines

  1. #ifndef  CLIB_INTUITION_PROTOS_H
  2. #define  CLIB_INTUITION_PROTOS_H
  3.  
  4. /*
  5. **    $VER: intuition_protos.h 38.16 (28.8.92)
  6. **    Includes Release 40.15
  7. **
  8. **    C prototypes. For use with 32 bit integers only.
  9. **
  10. **    (C) Copyright 1990-1993 Commodore-Amiga, Inc.
  11. **        All Rights Reserved
  12. */
  13.  
  14. #ifndef  INTUITION_INTUITION_H
  15. #include <intuition/intuition.h>
  16. #endif
  17. #ifndef  INTUITION_CLASSES_H
  18. #include <intuition/classes.h>
  19. #endif
  20. #ifndef  INTUITION_CGHOOKS_H
  21. #include <intuition/cghooks.h>
  22. #endif
  23. #ifndef  INTUITION_CLASSUSR_H
  24. #include <intuition/classusr.h>
  25. #endif
  26.  
  27. #ifdef __cplusplus
  28. extern "C" {
  29. #endif
  30.  
  31. /* Public functions OpenIntuition() and Intuition() are intentionally */
  32. /* not documented. */
  33. void OpenIntuition( void );
  34. void Intuition( struct InputEvent *iEvent );
  35. UWORD AddGadget( struct Window *window, struct Gadget *gadget,
  36.     unsigned long position );
  37. BOOL ClearDMRequest( struct Window *window );
  38. void ClearMenuStrip( struct Window *window );
  39. void ClearPointer( struct Window *window );
  40. BOOL CloseScreen( struct Screen *screen );
  41. void CloseWindow( struct Window *window );
  42. LONG CloseWorkBench( void );
  43. void CurrentTime( ULONG *seconds, ULONG *micros );
  44. BOOL DisplayAlert( unsigned long alertNumber, UBYTE *string,
  45.     unsigned long height );
  46. void DisplayBeep( struct Screen *screen );
  47. BOOL DoubleClick( unsigned long sSeconds, unsigned long sMicros,
  48.     unsigned long cSeconds, unsigned long cMicros );
  49. void DrawBorder( struct RastPort *rp, struct Border *border, long leftOffset,
  50.     long topOffset );
  51. void DrawImage( struct RastPort *rp, struct Image *image, long leftOffset,
  52.     long topOffset );
  53. void EndRequest( struct Requester *requester, struct Window *window );
  54. struct Preferences *GetDefPrefs( struct Preferences *preferences, long size );
  55. struct Preferences *GetPrefs( struct Preferences *preferences, long size );
  56. void InitRequester( struct Requester *requester );
  57. struct MenuItem *ItemAddress( struct Menu *menuStrip,
  58.     unsigned long menuNumber );
  59. BOOL ModifyIDCMP( struct Window *window, unsigned long flags );
  60. void ModifyProp( struct Gadget *gadget, struct Window *window,
  61.     struct Requester *requester, unsigned long flags,
  62.     unsigned long horizPot, unsigned long vertPot,
  63.     unsigned long horizBody, unsigned long vertBody );
  64. void MoveScreen( struct Screen *screen, long dx, long dy );
  65. void MoveWindow( struct Window *window, long dx, long dy );
  66. void OffGadget( struct Gadget *gadget, struct Window *window,
  67.     struct Requester *requester );
  68. void OffMenu( struct Window *window, unsigned long menuNumber );
  69. void OnGadget( struct Gadget *gadget, struct Window *window,
  70.     struct Requester *requester );
  71. void OnMenu( struct Window *window, unsigned long menuNumber );
  72. struct Screen *OpenScreen( struct NewScreen *newScreen );
  73. struct Window *OpenWindow( struct NewWindow *newWindow );
  74. ULONG OpenWorkBench( void );
  75. void PrintIText( struct RastPort *rp, struct IntuiText *iText, long left,
  76.     long top );
  77. void RefreshGadgets( struct Gadget *gadgets, struct Window *window,
  78.     struct Requester *requester );
  79. UWORD RemoveGadget( struct Window *window, struct Gadget *gadget );
  80. /* The official calling sequence for ReportMouse is given below. */
  81. /* Note the register order.  For the complete story, read the ReportMouse */
  82. /* autodoc. */
  83. void ReportMouse( long flag, struct Window *window );
  84. void ReportMouse1( struct Window *window, long flag );
  85. BOOL Request( struct Requester *requester, struct Window *window );
  86. void ScreenToBack( struct Screen *screen );
  87. void ScreenToFront( struct Screen *screen );
  88. BOOL SetDMRequest( struct Window *window, struct Requester *requester );
  89. BOOL SetMenuStrip( struct Window *window, struct Menu *menu );
  90. void SetPointer( struct Window *window, UWORD *pointer, long height,
  91.     long width, long xOffset, long yOffset );
  92. void SetWindowTitles( struct Window *window, UBYTE *windowTitle,
  93.     UBYTE *screenTitle );
  94. void ShowTitle( struct Screen *screen, long showIt );
  95. void SizeWindow( struct Window *window, long dx, long dy );
  96. struct View *ViewAddress( void );
  97. struct ViewPort *ViewPortAddress( struct Window *window );
  98. void WindowToBack( struct Window *window );
  99. void WindowToFront( struct Window *window );
  100. BOOL WindowLimits( struct Window *window, long widthMin, long heightMin,
  101.     unsigned long widthMax, unsigned long heightMax );
  102. /*--- start of next generation of names -------------------------------------*/
  103. struct Preferences *SetPrefs( struct Preferences *preferences, long size,
  104.     long inform );
  105. /*--- start of next next generation of names --------------------------------*/
  106. LONG IntuiTextLength( struct IntuiText *iText );
  107. BOOL WBenchToBack( void );
  108. BOOL WBenchToFront( void );
  109. /*--- start of next next next generation of names ---------------------------*/
  110. BOOL AutoRequest( struct Window *window, struct IntuiText *body,
  111.     struct IntuiText *posText, struct IntuiText *negText,
  112.     unsigned long pFlag, unsigned long nFlag, unsigned long width,
  113.     unsigned long height );
  114. void BeginRefresh( struct Window *window );
  115. struct Window *BuildSysRequest( struct Window *window, struct IntuiText *body,
  116.     struct IntuiText *posText, struct IntuiText *negText,
  117.     unsigned long flags, unsigned long width, unsigned long height );
  118. void EndRefresh( struct Window *window, long complete );
  119. void FreeSysRequest( struct Window *window );
  120. /* The return codes for MakeScreen(), RemakeDisplay(), and RethinkDisplay() */
  121. /* are only valid under V39 and greater.  Do not examine them when running */
  122. /* on pre-V39 systems! */
  123. LONG MakeScreen( struct Screen *screen );
  124. LONG RemakeDisplay( void );
  125. LONG RethinkDisplay( void );
  126. /*--- start of next next next next generation of names ----------------------*/
  127. APTR AllocRemember( struct Remember **rememberKey, unsigned long size,
  128.     unsigned long flags );
  129. /* Public function AlohaWorkbench() is intentionally not documented */
  130. void AlohaWorkbench( long wbport );
  131. void FreeRemember( struct Remember **rememberKey, long reallyForget );
  132. /*--- start of 15 Nov 85 names ------------------------*/
  133. ULONG LockIBase( unsigned long dontknow );
  134. void UnlockIBase( unsigned long ibLock );
  135. /*--- functions in V33 or higher (Release 1.2) ---*/
  136. LONG GetScreenData( APTR buffer, unsigned long size, unsigned long type,
  137.     struct Screen *screen );
  138. void RefreshGList( struct Gadget *gadgets, struct Window *window,
  139.     struct Requester *requester, long numGad );
  140. UWORD AddGList( struct Window *window, struct Gadget *gadget,
  141.     unsigned long position, long numGad, struct Requester *requester );
  142. UWORD RemoveGList( struct Window *remPtr, struct Gadget *gadget,
  143.     long numGad );
  144. void ActivateWindow( struct Window *window );
  145. void RefreshWindowFrame( struct Window *window );
  146. BOOL ActivateGadget( struct Gadget *gadgets, struct Window *window,
  147.     struct Requester *requester );
  148. void NewModifyProp( struct Gadget *gadget, struct Window *window,
  149.     struct Requester *requester, unsigned long flags,
  150.     unsigned long horizPot, unsigned long vertPot,
  151.     unsigned long horizBody, unsigned long vertBody, long numGad );
  152. /*--- functions in V36 or higher (Release 2.0) ---*/
  153. LONG QueryOverscan( unsigned long displayID, struct Rectangle *rect,
  154.     long oScanType );
  155. void MoveWindowInFrontOf( struct Window *window,
  156.     struct Window *behindWindow );
  157. void ChangeWindowBox( struct Window *window, long left, long top, long width,
  158.     long height );
  159. struct Hook *SetEditHook( struct Hook *hook );
  160. LONG SetMouseQueue( struct Window *window, unsigned long queueLength );
  161. void ZipWindow( struct Window *window );
  162. /*--- public screens ---*/
  163. struct Screen *LockPubScreen( UBYTE *name );
  164. void UnlockPubScreen( UBYTE *name, struct Screen *screen );
  165. struct List *LockPubScreenList( void );
  166. void UnlockPubScreenList( void );
  167. UBYTE *NextPubScreen( struct Screen *screen, UBYTE *namebuf );
  168. void SetDefaultPubScreen( UBYTE *name );
  169. UWORD SetPubScreenModes( unsigned long modes );
  170. UWORD PubScreenStatus( struct Screen *screen, unsigned long statusFlags );
  171.  
  172. struct RastPort *ObtainGIRPort( struct GadgetInfo *gInfo );
  173. void ReleaseGIRPort( struct RastPort *rp );
  174. void GadgetMouse( struct Gadget *gadget, struct GadgetInfo *gInfo,
  175.     WORD *mousePoint );
  176. void GetDefaultPubScreen( UBYTE *nameBuffer );
  177. LONG EasyRequestArgs( struct Window *window, struct EasyStruct *easyStruct,
  178.     ULONG *idcmpPtr, APTR args );
  179. LONG EasyRequest( struct Window *window, struct EasyStruct *easyStruct,
  180.     ULONG *idcmpPtr, ... );
  181. struct Window *BuildEasyRequestArgs( struct Window *window,
  182.     struct EasyStruct *easyStruct, unsigned long idcmp, APTR args );
  183. struct Window *BuildEasyRequest( struct Window *window,
  184.     struct EasyStruct *easyStruct, unsigned long idcmp, ... );
  185. LONG SysReqHandler( struct Window *window, ULONG *idcmpPtr, long waitInput );
  186. struct Window *OpenWindowTagList( struct NewWindow *newWindow,
  187.     struct TagItem *tagList );
  188. struct Window *OpenWindowTags( struct NewWindow *newWindow,
  189.     unsigned long tag1Type, ... );
  190. struct Screen *OpenScreenTagList( struct NewScreen *newScreen,
  191.     struct TagItem *tagList );
  192. struct Screen *OpenScreenTags( struct NewScreen *newScreen,
  193.     unsigned long tag1Type, ... );
  194.  
  195. /*    new Image functions */
  196. void DrawImageState( struct RastPort *rp, struct Image *image, long leftOffset,
  197.     long topOffset, unsigned long state, struct DrawInfo *drawInfo );
  198. BOOL PointInImage( unsigned long point, struct Image *image );
  199. void EraseImage( struct RastPort *rp, struct Image *image, long leftOffset,
  200.     long topOffset );
  201.  
  202. APTR NewObjectA( struct IClass *classPtr, UBYTE *classID,
  203.     struct TagItem *tagList );
  204. APTR NewObject( struct IClass *classPtr, UBYTE *classID, unsigned long tag1,
  205.     ... );
  206.  
  207. void DisposeObject( APTR object );
  208. ULONG SetAttrsA( APTR object, struct TagItem *tagList );
  209. ULONG SetAttrs( APTR object, unsigned long tag1, ... );
  210.  
  211. ULONG GetAttr( unsigned long attrID, APTR object, ULONG *storagePtr );
  212.  
  213. /*    special set attribute call for gadgets */
  214. ULONG SetGadgetAttrsA( struct Gadget *gadget, struct Window *window,
  215.     struct Requester *requester, struct TagItem *tagList );
  216. ULONG SetGadgetAttrs( struct Gadget *gadget, struct Window *window,
  217.     struct Requester *requester, unsigned long tag1, ... );
  218.  
  219. /*    for class implementors only */
  220. APTR NextObject( APTR objectPtrPtr );
  221. struct IClass *MakeClass( UBYTE *classID, UBYTE *superClassID,
  222.     struct IClass *superClassPtr, unsigned long instanceSize,
  223.     unsigned long flags );
  224. void AddClass( struct IClass *classPtr );
  225.  
  226.  
  227. struct DrawInfo *GetScreenDrawInfo( struct Screen *screen );
  228. void FreeScreenDrawInfo( struct Screen *screen, struct DrawInfo *drawInfo );
  229.  
  230. BOOL ResetMenuStrip( struct Window *window, struct Menu *menu );
  231. void RemoveClass( struct IClass *classPtr );
  232. BOOL FreeClass( struct IClass *classPtr );
  233. /*--- functions in V39 or higher (Release 3) ---*/
  234. struct ScreenBuffer *AllocScreenBuffer( struct Screen *sc, struct BitMap *bm,
  235.     unsigned long flags );
  236. void FreeScreenBuffer( struct Screen *sc, struct ScreenBuffer *sb );
  237. ULONG ChangeScreenBuffer( struct Screen *sc, struct ScreenBuffer *sb );
  238. void ScreenDepth( struct Screen *screen, unsigned long flags, APTR reserved );
  239. void ScreenPosition( struct Screen *screen, unsigned long flags, long x1,
  240.     long y1, long x2, long y2 );
  241. void ScrollWindowRaster( struct Window *win, long dx, long dy, long xMin,
  242.     long yMin, long xMax, long yMax );
  243. void LendMenus( struct Window *fromwindow, struct Window *towindow );
  244. ULONG DoGadgetMethodA( struct Gadget *gad, struct Window *win,
  245.     struct Requester *req, Msg message );
  246. ULONG DoGadgetMethod( struct Gadget *gad, struct Window *win,
  247.     struct Requester *req, unsigned long MethodID, ... );
  248. void SetWindowPointerA( struct Window *win, struct TagItem *taglist );
  249. void SetWindowPointer( struct Window *win, unsigned long tag1, ... );
  250. BOOL TimedDisplayAlert( unsigned long alertNumber, UBYTE *string,
  251.     unsigned long height, unsigned long time );
  252. void HelpControl( struct Window *win, unsigned long flags );
  253.  
  254. #ifdef __cplusplus
  255. }
  256. #endif
  257.  
  258. #ifdef STORMPRAGMAS
  259. #ifndef _INCLUDE_PRAGMA_INTUITION_LIB_H
  260. #include <pragma/intuition_lib.h>
  261. #endif
  262. #endif
  263.  
  264. #endif     /* CLIB_INTUITION_PROTOS_H */
  265.